﻿(function () {

    // ReSharper disable once InconsistentNaming
    var Easyui = function () {

        $.extend($.fn.validatebox.defaults.rules, {
            equals: {
                validator: function (value, param) {
                    return value == $(param[0]).val();
                },
                message: '原始值不匹配.'
            },
            qq: {
                validator: function (value) {
                    var reg = /^\d{5,10}$/;
                    return reg.test(value);
                },
                message: 'QQ格式不正确.'
            },
            mobile: {
                validator: function (value) {
                    var reg = /^1[3|4|5|8][0-9]\d{4,8}$/;
                    return reg.test(value);

                },
                message: '手机格式不正确.'
            }
        });
    };
    Easyui.prototype = {
        window: function (target, options) {
            var defaults = {
                modal: true,
                closed: true,
                collapsible: false,
                minimizable: false,
                maximizable: false,
                draggable: false,
                resizable: false
            };
            $(target).window($.extend(defaults, options));
        },
        alert: function (message,fn) {
            $.messager.alert('消息提示', message, 'info', fn);
        },
        mask: function (target, ns) {
            if (ns) {
                $(target).find('div[type="mask"]').remove();
            } else {
                var w = $(target).outerWidth();
                var h = $(target).outerHeight();
                var html = '<div type="mask" mar style="position: absolute;  top: 0; left: 0; width: ' + w + 'px; height: ' + h + 'px; background-color: #eee ;opacity: 0.9;z-index: 1;overflow:hidden;"></div>' +
                '<div type="mask" style="position: absolute; background-color: #ddd;  z-index: 2; height: 20px; width: 120px; top: 50%; left: 50%; border: 1px solid #c0c0c0; padding: 10px; margin-top: -30px; margin-left: -80px; color: #000;">数据加载中,请稍后...</div>';
                $(target).css('position', 'relative');
                $(target).append(html);
            }
        }
    };

    var easyui = new Easyui();

    Oneworks.Easyui = {
        alert: function (message, fn) {
            easyui.alert(message, fn);
        },
        window: function (target, options) {
            easyui.window(target, options);
        },
        mark: function (target, ns) {
            easyui.mask(target, ns);
        }
    };

    $.fn.Easyui = function () {
        var that = this;
        return {
            window: function (options) {
                Oneworks.Easyui.window(that, options);
            },
            mark: function (ns) {
                Oneworks.Easyui.mark(that, ns);
            }
        };
    };

    //var App = window.App || {};
    //App.Easyui = {
    //    Tree: {
    //        click: function (node, tab, tree) {
    //            var leaf = $(tree).tree('isLeaf', node.target);
    //            var istab = $(tab).tabs('exists', node.text);
    //            if (leaf && !istab) {
    //                if (node.attributes) {
    //                    if (node.attributes.target === 'iframe') {
    //                        $(tab).tabs('add', {
    //                            id: node.id,
    //                            title: node.text,
    //                            content: '<iframe  scrolling="yes" frameborder="0"  src="' + node.attributes.href + '" style="width:100%;height:99%;"></iframe>',
    //                            closable: true
    //                        });
    //                    } else {
    //                        $(tab).tabs('add', {
    //                            id: node.id,
    //                            title: node.text,
    //                            href: node.attributes.href,
    //                            closable: true
    //                        });
    //                    }
    //                }
    //            } else {
    //                if (istab) {
    //                    $(tab).tabs('select', node.text);
    //                }
    //            }
    //        },
    //        rightClick: function (e, node) {
    //            e.preventDefault();
    //        }
    //    },
    //    Tabs: {
    //        rightClick: function (e, title, index) {
    //            e.preventDefault();
    //        },
    //        beforeCloseTab: function (tab, title, index) {
    //            console.log(title);
    //            console.log(index);
    //            var tabHtml = $(tab).tabs('getTab', index);
    //            //$(tabHtml).remove();
    //        }
    //    }
    //}; 
} ());